机器人工具坐标系标定精度提升方法
修订日期 | 修订版本 | 修订内容 | 修订人 |
---|---|---|---|
2023.12.18 | V0.1 | 初始化文档 | 袁紫衣 |
[TOC]
1. 工具坐标系标定概念
机器人使用过程中经常在机器人末端法兰面安装不同的工具来满足实际生产需求,为了准确控制工具运动的位置与姿态,需要对工具所在坐标系进行标定。
工具坐标系标定的目的是获得工具坐标系相对于法兰坐标系的准确描述: $^{F}T_{T}$ 。
通常我们采用四点标定法来对工具坐标系的位置进行标定,采用三点法对工具坐标系的姿态进行标定。
对TCP精度要求较高的场合,一般用户需要借助额外的设备进行精确标定(如光学捕捉设备)。
2. 工具坐标系标定方法及步骤
2.1 坐标系原点标定
采用四点法对工具坐标系的位置进行标定,步骤为:
- 保持末端工具位置不变,改变机器人关节角,运动到四个及以上的标定构型。
如下图所示:
2.2 坐标系方向标定
通常我们采用三点标定法来对坐标系姿态进行标定
支持的坐标系标定算法包括:
enum class CoordCalibMethod: int
{
O_X_XY = 0, // 原点、x轴正半轴、x、y轴平面的第一象限上任意一点
O_X_XZ = 1, // 原点、x轴正半轴、x、z轴平面的第一象限上任意一点
O_Y_YZ = 2, // 原点、y轴正半轴、y、z轴平面的第一象限上任意一点
O_Y_YX = 3, // 原点、y轴正半轴、y、x轴平面的第一象限上任意一点
O_Z_ZX = 4, // 原点、z轴正半轴、z、x轴平面的第一象限上任意一点
O_Z_ZY = 5, // 原点、z轴正半轴、z、y轴平面的第一象限上任意一点
};// 坐标系标定方法
下面以标定类型为 O_X_XY 为例,说明工具坐标系姿态的标定步骤:
运动到工具坐标系原点,记录此时法兰在基坐标下的位姿,
保持末端姿态不动,沿工具坐标系X轴运动一定的距离,记录此时法兰在基坐标下的位姿,
保持末端姿态不动,沿工具坐标系XY平面运动一定的距离,记录此时法兰在基坐标下的位姿,
如下图所示:
3. tcp 精度验证方法
3.1 使用围绕尖点旋转法进行检测
如上图所示,使用了围绕尖点旋转的方法对机器人绝对精度进行检查,具体操作说明如下。
- 在机器人法兰末端安装尖点。
- 将当前尖点 TCP 的坐标输入到示教器,作为机器人 TCP。
- 在工作区域中添加另一个尖点并将其固定好。
- 使用示教器移动机器人,使其尖点与工作区域中的尖点精准接触(尖对尖)。
- 使用示教器控制机器人以当前 TCP 为中心进行旋转,观察两尖点的重合情况和距离波动范围。
如下图所示,
图 1 中机器人工具中心尖点与另一尖点能够重合,表示机器人绝对精度良好;
图 2 中机器人工具中心尖点与另一尖点触碰时存在偏差,表示机器人绝对精度较差;
图 3 中机器人工具中心尖点与另一尖点触碰时存在较大的偏差,表示机器人绝对精度非常差。
3.2 测量机器人移动距离误差
在工作区域内使用示教器控制机器人沿固定方向(例如 X、Y 方向)移动一段距离,移动完成后将该距离与机器人实际移动距离进行对比并测量差值。
例如,使用示教器控制机器人沿 X 方向移动 1000 mm,然后测量机器人实际移动的距离,如机器人实际移动了 998 mm,则机器人移动距离误差为 2 mm。
4. 造成 tcp 精度差的原因
造成 tcp 精度差的主要原因如下:
- 机械臂本体绝对定位精度
- tcp 标定过程中示教尖点的对齐精度
aubo 机械臂在出厂前会进行运动学标定以及绝对定会精度测试,本体达到 mm 以下量级的绝对定位精度
5. 提升 tcp 精度的方法
- 机械臂上电后,各个关节运动一段距离(一般是5°左右)后,再对工具进行标定
- 采用与工作构型相近的构型来标定 tcp,尽可能在机械臂的灵活工作空间
- 对工具位置进行更精细的标定,验证多次标定后工具的位置误差是否和精度在同一数量级
- 采用更多的点位对工具位置进行标定,提升工具坐标系原点精度
- 对工具姿态进行精细标定,可能需要套筒 (保证机械臂沿着工具的坐标轴方向进行移动) 等辅助工具对姿态进行标定
当通过前序步骤完成标定,机器人绝对精度无法满足需求时,手动微调 tcp 数值,按照 3 小节的方法来验证精度是否达标;若仍然无法达标,请联系机器人厂家进行精度校正。
若机器人厂家无法进行精度校正或校正后精度仍然无法满足要求,可尝试在不同构型定义不同的工件坐标系,来补偿机器人绝对精度。
6. Q&A
1. 末端负载和机械臂末端是同心的,理论上讲应该只有Z轴有值。为什么实际标定的值X和Y都有值?
原因如下:
- 工具可能存在加工误差
- tcp 标定过程中对齐示教尖点的存在误差
- 机械臂虽然进行过运动学标定,但是仍然存在绝对定位精度误差
以上原因都可能导致 理论上只有 Z 轴偏移的 tcp,却存在 X 和 Y 的偏移, 可以通过 tcp 精度验证方法来判断该误差是否可以接受
2. 造成标定精度差别的原因是什么?
见 4. 造成 tcp 精度差的原因
3. 标定结果的评判方法是什么?
见 3. tcp 精度验证方法
7 现场解决方案记录
- 采用细针尖进行对 TCP X, Y, Z 进行标定,标定完后,进行反复修改工具坐标系的 X, Y, Z 值直到达到预期效果,解决达闼精度不良问题
- [【魔狸科技】【0.29.2-beta.30】同样的负载,每次通过示教器标定的TCP值不一样]